home *** CD-ROM | disk | FTP | other *** search
/ Power CD / Power CD ATARI-Rechner Lieben.iso / UTILITY / PROFILER / TOM07.PRO < prev    next >
Encoding:
Text File  |  1989-06-16  |  1.6 KB  |  44 lines

  1. var anzahl,zahl,i : integer;  {  ANZAHL : 26906  Min 0.  Max 26904  }
  2.                         {  ZAHL : 2  Min 200  Max 200  }
  3.                         {  I : 0.  Min ---  Max ---  }
  4.     muenze : array [1..8] of integer;  {  MUENZE : 54924  }
  5. procedure zerlege (zahl : integer;maximum : integer);  { 26905 }
  6.                                   { Max. Rekursion: 100 }
  7.                         {  ZAHL : 54916  Min 0.  Max 200  }
  8.                         {  MAXIMUM : 26905  Min 2  Max 8  }
  9.   var i,m : integer;  {  I : 81821  Min 2  Max 9  }
  10.                         {  M : 0.  Min ---  Max ---  }
  11.   begin
  12.     for i:=2 to maximum do  { 28012 }
  13.       if zahl-muenze[i]>=0 then  { 26904 }
  14.       BEGIN
  15.         anzahl:=anzahl+1;
  16.         zerlege(zahl-muenze[i],i);
  17.       END;
  18.   end;
  19. begin
  20.   muenze[1]:=1;muenze[2]:=2;muenze[3]:=5;muenze[4]:=10;muenze[5]:=50;
  21.   muenze[6]:=100;muenze[7]:=200;muenze[8]:=500;
  22.   write('-> Summe in Pf ');readln(zahl);anzahl:=0; 
  23.   zerlege(zahl,8);
  24.   writeln('<- Es gibt ',anzahl+1,' Möglichkeiten ');
  25. end.
  26. { Problemstellung :
  27.   
  28.   Wenn Sie genügend viele 1pf,2pf,5pf,10pf,50pf,1dm,5dm-Stücke zu Verfügung
  29.   haben, so können Sie einen bestimmten Betrag mit mehreren Möglichkeiten
  30.   bezahlen. Z.B. 10 Pf : Es gibt 11 Möglichkeiten : 1*10;2*5;1*5+2*2+1*1;
  31.   1*5+1*2+3*2;1*5+5*1;5*2;4*2+2*1;3*2+4*1;2*2+8*1;1*2+8*1;10*1 (sonst geht
  32.   nix mehr). Die Anzahl Möglichkeiten wächst überproportional zum Geldwert.
  33.   Maximal können 499 Pf berechnet werden (!).
  34.   
  35.   Beispiel :
  36.   
  37.   200 Pf (=2 DM-Stück !) ergibt 29605 Mölichkeiten.
  38.   
  39.   Hinweise :
  40.   
  41.    Rekursion, Variablenzählung. 
  42. }
  43.